#ifndef MORPHOLOGY_H
#define MORPHOLOGY_H
#include "Core.h"
#include "Ptr.hpp"
#include "QImage.h"


using namespace OOPUtils;


class Morphology
{
public:

  Morphology (const Core< int > & structElem) : __structElem (structElem) {}

  void setStructElem (const Core< int > & structElem) { __structElem = structElem; }

  virtual Ptr< QImage > operate (Ptr< QImage > pSrcImage) = 0;

protected:

  Core< int > __structElem;

};

#endif // Morphology_H
